home *** CD-ROM | disk | FTP | other *** search
/ Mac Mania 4 / MacMania 4.toast / / Games&Education / U3 Character Editor 1.1.2 / Manual next >
Text File  |  1996-05-06  |  12KB  |  147 lines

  1. Ult. 3 Character Editor
  2. Copyright © 1995 by Michael D. Trent; all rights reserved.
  3. Internet: mtrent@epicsys.com
  4.  
  5.  
  6. Manual
  7. ~~~~~~
  8. In case you like reading manuals, or my program is too dense for people to use intuitively, here's a brief user manual.
  9.  
  10.  
  11. System Requirements
  12. ~~~~~~~~~~~~~~~~~
  13. A Mac;
  14. A monitor capable of 640x400 or better (smaller monitors might not see all of the big dialog);
  15. Some brand of keyboard and mouse. Both are required to use the program most efficiently;
  16. System 7. Try as I might, and I've tried pretty hard, I no longer have sympathy for System 6 users;
  17. RAM (about 100k free);
  18. A Hard Disk (about 100k free);
  19. Ultima III, registered or not (preferably registered).
  20.  
  21. NOTE: A Sense of Humor is no longer required to use Ult. 3 Character Editor; however it is required if the user wishes to read all of this manual.
  22.  
  23.  
  24. Installation
  25. ~~~~~~~~~
  26. By now, you've found you can download or otherwise aquire Ult. 3 Character Editor, and uncompress the archive it came in. Now it is presumably sitting on some disk somewhere.
  27.  
  28. To properly install Ult. 3 Character Editor… that's it. Just make sure it's on some disk somewhere, perhaps somewhere close to your Ultima folder.
  29.  
  30.  
  31. Starting Ult. 3 Character Editor 
  32. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  33. From the Finder, try one of three things:
  34. 1) Double-Click it.
  35. 2) Select it (click it once), then press -O
  36. 3) Select it (click it once), then press -<Down Arrow> (System 7 (7.1?) Only!)
  37.  
  38. Be aware users often have other, more creative ways to launch applications. You may be one of those users.
  39.  
  40.  
  41. Program Startup
  42. ~~~~~~~~~~~~~
  43. When Ult. 3 Character Editor starts up, you will be presented with a file selection dialog. Use the file selection dialog to select the "Roster" file in your Ultima III folder. Ult. 3 Character Editor will then load all your characters' information and display the Roster Dialog
  44.  
  45.  
  46. Roster Dialog
  47. ~~~~~~~~~~
  48. The Roster Dialog is a rough analogy to the Roster as provided by Ultima III. You will see two columns of radio buttons, each ten rows deep.  Radio buttons represent your characters.  For each character in the Roster, the corresponding radio button will be enabled, bearing the name of your character. From here, you can Edit your characters, save the Roster file, or Quit.
  49.  
  50. You can start editing a character in one of three ways:
  51. 1) Click a radio button for one of your characters, then click "Edit" or press Return or Enter or "E".
  52. 2) Select a radio button using the arrow keys, then click "Edit" or press Return or Enter or "E". Appreciate how much time, code, and Pepsi™ I spent enabling this feature.
  53. 3) Double-Click an active radio-button. I ripped this feature off from Civilization — I think it's cool! Also appreciate how much time I spent enabling this feature; balance this with how much fun I had doing it.
  54. After doing one of these three things, the Edit dialog will appear.
  55.  
  56. To save changes you've made to the Roster file, click "Save" or press "S".
  57.  
  58. To Quit, click "Quit" or press "Q", Esc, or -period. If you've made changes to the Roster, you will be asked if you want to save, quit without saving, or cancel. Handy keyboard shortcuts on this dialog include: Enter/Return to Save, Esc or -period to Cancel, or the first letter of any button to press that button.
  59.  
  60.  
  61. Edit Dialog
  62. ~~~~~~~~
  63. Here you will see an amazingly busy screen, in which you can edit your characters stats. Some common sense rules apply here: 
  64. 1) Don't equip a weapon or armor if you don't have any of that kind. The game will have no sympathy.
  65. 2) Giving yourself 0 HP is not a bright thing to do.
  66. 3) Maxing out things is fun and all, but it can be dangerous. Quiz: what happens when you give yourself 65535 gold pieces, and then you pick up a chest?
  67.  
  68. By pressing OK, the changes you make to the character will be stored in Ult. 3 Character Editor's copy of the Roster. Changes won't be written to disk until you "Save" from the Roster dialog.  Cancel, predictably, clears the dialog, abandoning any changes made.
  69.  
  70. In fields that should contain numbers only, Ult. 3 Character Editor will beep at you if you type non-numbers. In the field containing your characters name, the program will beep at you if you try to type in non-printing control characters and the like. WARNING: Some wise-guy might come up with some keystroke to shoot some non-printing character into the name field; I make no guarantees that this can't happen, and I make no guarantees that the program will work properly once (if) this does happen.
  71.  
  72. A notice to aspiring young Bit-Wizards: I have calculated Maximum values based upon the datastructures that hold the data. If you really want 70000 gold pieces, I will let you try to file it.  However, you will be trying to fit a 17 bit (minimum) number into a 16 bit hole. Ultima III won't be forgiving and round down to the biggest 16 bit number available, it will strip off the highest bit. In this example, your treasure hoarde will shrink to about 4464 gp. Not a small amount by any stretch of the imagination, but hardly a king's ransom.
  73.  
  74. Those familiar with older versions of Ult. 3 Character Editor will note that user validation behaves completely differently. Now, when you attempt to enter a number larger than Ultima III will recognize, the "Numerical Overflow" alert will appear. The "Numerical Overflow" alert will let you 1) cancel whatever keystroke put you in this predicament; 2) allow you to shoot your foot off by entering big numbers; 3) max out the field directly. Go ahead and try pasting big numbers in – I worked long and hard to figure out a way to keep you from doing it.
  75.  
  76.  
  77. Known Problems, Short-Commings, and stuff
  78. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  79. The program's user interface, aside from all it's keyboard short-cuts, is pretty gross. If I had lots of free time, I'd make a nice interface.  But I'm too busy working at my job and playing Ultima III to do that.
  80.  
  81. I cut some corners in loading/saving the data, handling some keystroke trapping in the Edit dialog, and other places of interest. Since I'm not playing by the rules, the software might wig-out and do a dance on your operating-system, or otherwise not work correctly. Still, it seems to work for me …
  82.  
  83. If you haven't registered your copy of Ultima III, you can't max out your stats. Ultima III will round them down to 25. This is intentional!! If it bugs you, you should register your copy.  The same appies for possessing Cards.
  84.  
  85.  
  86. Possible Enhancements
  87. ~~~~~~~~~~~~~~~~~
  88. Again: If I have the time, and if I really care. After all, there's some cool Shareware I should be working on here ... 
  89.  
  90. Real Menus, Modeless dialogs, Finder Drag-n-Drop file opening, Balloon help, maybe borrowing (at runtime!) some resources from Ultima III to make a groovy splash screen, a floating window that, when in the Edit window, will display the maximum value of the active Text Edit box and allow you to max it directly, etc.
  91.  
  92. If I had a serious grudge against Ultima's III pre-Journey Onward activities, I could implement character creation/deletion, Party forming/disbanding, the works! I see no reason to do that though ... 
  93.  
  94.  
  95. 1.1 Technical Notes  (for the programming types)
  96. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  97. I once wrote: "Source level improvements include removing a LOT of repeated code, left as a tribute to the perils of Cut 'n' Paste programming. Implement a "Dictionary" that identifies each stat, how it's to be filed, and where on the Edit Dialog it is displayed. That would be COOL!"  I can happily report that this is the major "feature" in version 1.1. It reduced the object code by 4k, and eliminated about 10 screen-fulls of lines.
  98.  
  99. Essentially, the program now comes equipped with a small database that records 1) where data should be saved in the save-game file; 2) what kind data it is; 3) which changable item on the Edit Dialog ecah piece of data is associated with. So, instead of writing 4 screens of code consisting of "GetDItem", "GetIText", "StringToNum", "FileTheData", all the data from the edit dialog is contained in a for-loop that executes a single line of code:  "SaveItem".  I think that's really really really really cool.
  100.  
  101. Unfortunately, I don't know if anyone else has tried doing this - maybe someone has come up with a better way of maintaining a Dialog item data dictionary.  Interested parties are welcome to e-mail me and talk shop; I'd like to hear other ways of doing it.
  102.  
  103. Even counting the dramatic re-write of all the data handling code, the most flashy revision is the real-time data-validation. Try to type a number that's too big and the program will warn you before the changeis displayed on the screen! Sounds pretty easy? Consider this: You have to handle all key strokes, including letters, numbers, control characters, and so on; you have to keep track of where the insertion point is, because the number "11" can become "911" as easily as it can become "119"; and you have to selectively screen pasting - you want users to use cut and paste to make changes, but you don't want them to paste their term paper into their "Current MP".
  104.  
  105. I looked hard for a good way to handle all those cases, and I think I did a good (though not perfect, I fear) job. Again, I'm willing to chat with anyone interested in discussing the topic.
  106.  
  107. In version 1.1.2, I pulled a low memory global reference from my real-time validation code. In order to validate pasting, I needed the length of the text clip. I replaced the reference to 0x0AB0 with the safer call to LMGetTEScrpLength();.
  108.  
  109.  
  110. Other Editors SORELY needed for Ultima III, which I have NO plans on working on
  111. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  112. A patch to turn Ultima III into Ultima IV
  113. A patch to turn Ultima IV into Ultima V
  114. A magic machine that can turn compressed JPEG images into REAL cloth maps.
  115.  
  116. Other Editors SORELY needed for Ultima III, which I DO have plans on working on
  117. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  118. Map Editor for Sosaria, towns, castles, dungeons, etc.
  119. Monster Editors.
  120.  
  121. Speculation as to what Leon McNeill can do with his newly found Mac Programming Prowess
  122. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  123. Write an AWESOME ADVENTURE GAME!! Clearly Leon is on par other Mac adventure game greats; at least with respect to adventure game programming. I think it's time for Leon to try his hand at actually designing a game, from beginning to end — interface, plot, mechanics, the works!
  124.  
  125. Of course, all this takes time, interest, and so on. I wish him luck with whatever he decides to do.
  126.  
  127.  
  128. About the Author
  129. ~~~~~~~~~~~~~
  130.  
  131. Mike Trent is a software developer at Epic Computer Systems, a Madison, WI based company primarily interested in developing health-care software.  At work he programs on Pentiums and uses a Newton to keep track of his active schedule. In his spare time, he plays frisbee golf, hacks around on his Centris 650 w/ PPC upgrade, plays double bass in symphony orchestras, reads comic books, and sleeps. Mostly, he sleeps.
  132.  
  133. Mike Trent has released a number of software products to the Mac community under the guise of "Azathoth Software"; including CPU Reporter, Simple Sockets, Ult. 3 Character Editor, Mac Kerouac II, Ultima III Editor, and a number of submissions to alt.sources.mac.
  134.  
  135. Mike Trent can be reached at:
  136.     Michael D. Trent
  137.     Azathoth Software
  138.     3302 Leopold Way #110
  139.     Madison, WI 53713
  140.     mtrent@msn.fullfeed.com   (<--- preferred address)
  141.     mtrent@epicsys.com
  142.  
  143. (Please note that msn.fullfeed.com is not the Microsoft Network. It is the Madison (as in:  Madison, Wisconsin) branch of Fullfeed communications.)
  144.  
  145. His web-page can be found at http://www.fullfeed.com/~mtrent/. 
  146.  
  147. He likes cats.